package com.authine.cloudpivot.ext.model.yunshu;

import com.fasterxml.jackson.annotation.JsonProperty;
import lombok.AllArgsConstructor;
import lombok.Builder;
import lombok.Data;
import lombok.NoArgsConstructor;

import java.util.ArrayList;
import java.util.List;

/**
 * @Author: Peter Lee
 * @Date: 2021/1/20 9:43
 * @Describe: 云枢返回参数封装
 */
@Data
@AllArgsConstructor
@NoArgsConstructor
@Builder
public class YsResultModel {

    /**
     * 请求是否成功，true：成功
     */
    @JsonProperty("Successful")
    private Boolean successful;
    /**
     * 请求失败原因，成功时为null
     */
    @JsonProperty("ErrorMessage")
    private String errorMessage;
    /**
     * （未使用，忽略）
     */
    @JsonProperty("Logined")
    private Boolean logined;
    /**
     * （未使用，忽略）
     */
    @JsonProperty("DataType")
    private Integer dataType;
    /**
     * 主体数据
     */
    @JsonProperty("ReturnData")
    private ReturnData returnData;

    /**
     * 测试使用
     *
     * @return
     */
    public static YsResultModel getYs() {
        List<Result> resultList = new ArrayList<>();
        resultList.add(new Result("返回", "消息"));

        return YsResultModel.builder()
                .successful(true)
                .errorMessage(null)
                .logined(true)
                .returnData(ReturnData.builder().results(resultList).build())
                .dataType(0)
                .build();
    }

}
